package com.ktjy.ruoyidata.mapper;

import java.util.List;

import com.ktjy.ruoyidata.domain.MdProductBom;
import com.ktjy.ruoyidata.domain.MyItem;

/**
 * 物料产品Mapper接口
 * 
 * @author t382
 * @date 2025-05-07
 */
public interface MyItemMapper 
{
    /**
     * 查询物料产品
     * 
     * @param itemId 物料产品主键
     * @return 物料产品
     */
    public MyItem selectMyItemByItemId(Long itemId);

    /**
     * 查询物料产品列表
     * 
     * @param myItem 物料产品
     * @return 物料产品集合
     */
    public List<MyItem> selectMyItemList(MyItem myItem);

    /**
     * 新增物料产品
     * 
     * @param myItem 物料产品
     * @return 结果
     */
    public int insertMyItem(MyItem myItem);

    /**
     * 修改物料产品
     * 
     * @param myItem 物料产品
     * @return 结果
     */
    public int updateMyItem(MyItem myItem);

    /**
     * 删除物料产品
     * 
     * @param itemId 物料产品主键
     * @return 结果
     */
    public int deleteMyItemByItemId(Long itemId);

    /**
     * 批量删除物料产品
     * 
     * @param itemIds 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteMyItemByItemIds(Long[] itemIds);

    /**
     * 批量删除产品BOM关系
     *
     * @param itemIds 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteMdProductBomByBomItemIds(Long[] itemIds);

    /**
     * 批量新增产品BOM关系
     *
     * @param mdProductBomList 产品BOM关系列表
     * @return 结果
     */
    public int batchMdProductBom(List<MdProductBom> mdProductBomList);


    /**
     * 通过物料产品主键删除产品BOM关系信息
     *
     * @param itemId 物料产品ID
     * @return 结果
     */
    public int deleteMdProductBomByBomItemId(Long itemId);

}
